package cn.csc.module.pay.controller.admin.funddetails.vo;

import lombok.*;

import java.math.*;
import java.util.*;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import io.swagger.annotations.*;
import javax.validation.constraints.*;

/**
* 用户资金收支明细 Base VO，提供给添加、修改、详细的子 VO 使用
* 如果子 VO 存在差异的字段，请不要添加到这里，影响 Swagger 文档生成
*/
@Data
public class PayFundDetailsBaseVO {

    @ApiModelProperty(value = "外部用户id")
    private String appUserId;

    @ApiModelProperty(value = "商户编号", required = true)
    @NotNull(message = "商户编号不能为空")
    private BigInteger merchantId;

    @ApiModelProperty(value = "撤销分账金额")
    private BigDecimal refundDivideMoney;

    @ApiModelProperty(value = "分账金额")
    private BigDecimal divideMoney;

    @ApiModelProperty(value = "冻结金额")
    private BigDecimal freezeMoney;

    @ApiModelProperty(value = "撤销冻结金额")
    private BigDecimal refundFreezeMoney;

    @ApiModelProperty(value = "支付订单Id", required = true)
    @NotNull(message = "支付订单Id不能为空")
    private BigInteger orderId;

    @ApiModelProperty(value = "见证宝订单")
    private BigInteger jzbOrderId;

    @ApiModelProperty(value = "交易类型,0:其他,1:冻结 2:撤销冻结 3:分账")
    private Integer tradeType;

}
